[INFO] fetching crate kdb 0.3.0...
[INFO] checking kdb-0.3.0 against master#9610dfe5a9a731ced1ea4923ecbd0c57fe367898 for beta-170-4
[INFO] extracting crate kdb 0.3.0 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate kdb 0.3.0 on toolchain 9610dfe5a9a731ced1ea4923ecbd0c57fe367898
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate kdb 0.3.0
[INFO] finished tweaking crates.io crate kdb 0.3.0
[INFO] tweaked toml for crates.io crate kdb 0.3.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate crates.io crate kdb 0.3.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded array_iterator v1.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7b3e4fccf063e7250e40783e4982da768971142d897e26217a68559edb2c9fa9
[INFO] running `Command { std: "docker" "start" "-a" "7b3e4fccf063e7250e40783e4982da768971142d897e26217a68559edb2c9fa9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7b3e4fccf063e7250e40783e4982da768971142d897e26217a68559edb2c9fa9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7b3e4fccf063e7250e40783e4982da768971142d897e26217a68559edb2c9fa9", kill_on_drop: false }`
[INFO] [stdout] 7b3e4fccf063e7250e40783e4982da768971142d897e26217a68559edb2c9fa9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+9610dfe5a9a731ced1ea4923ecbd0c57fe367898" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b2766535f7a7067cc30a9d7ba0f4b2639ff6544aec49fffcb65e2ecf2f634a1f
[INFO] running `Command { std: "docker" "start" "-a" "b2766535f7a7067cc30a9d7ba0f4b2639ff6544aec49fffcb65e2ecf2f634a1f", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.24
[INFO] [stderr]    Compiling syn v1.0.60
[INFO] [stderr]    Compiling kdb v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking array_iterator v1.3.0
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling thiserror-impl v1.0.23
[INFO] [stderr]     Checking thiserror v1.0.23
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/k_error.rs:27:13
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let mut err = KBox::new_atom(symbol(msg)).into_raw() as *mut K;
[INFO] [stdout]    |             ----^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/serialization.rs:51:63
[INFO] [stdout]     |
[INFO] [stdout] 51  |         let bytes = b9_serialize(SerializationMode::InProc, l.as_ref()).unwrap();
[INFO] [stdout]     |                                                               ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s satisfying `kbox::KBox<list::List<i32>>: AsRef<_>` found
[INFO] [stdout]    --> src/any.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl<T: KListable> AsRef<Any> for KBox<List<T>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/kbox.rs:82:1
[INFO] [stdout]     |
[INFO] [stdout] 82  | impl<T: KObject> AsRef<T> for KBox<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a fully qualified path to specify the expected types
[INFO] [stdout]     |
[INFO] [stdout] 51  |         let bytes = b9_serialize(SerializationMode::InProc, <kbox::KBox<list::List<i32>> as AsRef<T>>::as_ref(&l)).unwrap();
[INFO] [stdout]     |                                                             +++++++++++++++++++++++++++++++++++++++++++++++++++ ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/serialization.rs:55:66
[INFO] [stdout]     |
[INFO] [stdout] 55  |         let bytes = b9_serialize(SerializationMode::Enumerate, l.as_ref()).unwrap();
[INFO] [stdout]     |                                                                  ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s satisfying `kbox::KBox<list::List<i32>>: AsRef<_>` found
[INFO] [stdout]    --> src/any.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl<T: KListable> AsRef<Any> for KBox<List<T>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/kbox.rs:82:1
[INFO] [stdout]     |
[INFO] [stdout] 82  | impl<T: KObject> AsRef<T> for KBox<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a fully qualified path to specify the expected types
[INFO] [stdout]     |
[INFO] [stdout] 55  |         let bytes = b9_serialize(SerializationMode::Enumerate, <kbox::KBox<list::List<i32>> as AsRef<T>>::as_ref(&l)).unwrap();
[INFO] [stdout]     |                                                                +++++++++++++++++++++++++++++++++++++++++++++++++++ ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/serialization.rs:59:68
[INFO] [stdout]     |
[INFO] [stdout] 59  |         let bytes = b9_serialize(SerializationMode::Unenumerate, l.as_ref()).unwrap();
[INFO] [stdout]     |                                                                    ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s satisfying `kbox::KBox<list::List<i32>>: AsRef<_>` found
[INFO] [stdout]    --> src/any.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl<T: KListable> AsRef<Any> for KBox<List<T>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/kbox.rs:82:1
[INFO] [stdout]     |
[INFO] [stdout] 82  | impl<T: KObject> AsRef<T> for KBox<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a fully qualified path to specify the expected types
[INFO] [stdout]     |
[INFO] [stdout] 59  |         let bytes = b9_serialize(SerializationMode::Unenumerate, <kbox::KBox<list::List<i32>> as AsRef<T>>::as_ref(&l)).unwrap();
[INFO] [stdout]     |                                                                  +++++++++++++++++++++++++++++++++++++++++++++++++++ ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]    --> src/serialization.rs:63:65
[INFO] [stdout]     |
[INFO] [stdout] 63  |         let bytes = b9_serialize(SerializationMode::Compress, l.as_ref()).unwrap();
[INFO] [stdout]     |                                                                 ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: multiple `impl`s satisfying `kbox::KBox<list::List<i32>>: AsRef<_>` found
[INFO] [stdout]    --> src/any.rs:106:1
[INFO] [stdout]     |
[INFO] [stdout] 106 | impl<T: KListable> AsRef<Any> for KBox<List<T>> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/kbox.rs:82:1
[INFO] [stdout]     |
[INFO] [stdout] 82  | impl<T: KObject> AsRef<T> for KBox<T> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: try using a fully qualified path to specify the expected types
[INFO] [stdout]     |
[INFO] [stdout] 63  |         let bytes = b9_serialize(SerializationMode::Compress, <kbox::KBox<list::List<i32>> as AsRef<T>>::as_ref(&l)).unwrap();
[INFO] [stdout]     |                                                               +++++++++++++++++++++++++++++++++++++++++++++++++++ ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0283`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `kdb` (lib test) due to 5 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/connection.rs:28:79
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]    |                                                  ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 91 |         evaluate!(-self.0, callback, topic.into(), object.into()).map(|_| ())
[INFO] [stdout]    |         --------------------------------------------------------- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: `#[warn(temporary_cstring_as_ptr)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]   --> src/connection.rs:28:79
[INFO] [stdout]    |
[INFO] [stdout] 28 |             let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]    |                                                  ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 96 |         evaluate!(self.0, query).map(from_raw)
[INFO] [stdout]    |         ------------------------ in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]    = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]    = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |             let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                  ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 101 |         evaluate!(self.0, function, param.into()).map(from_raw)
[INFO] [stdout]     |         ----------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |             let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                  ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 111 |         evaluate!(self.0, function, param.into(), param_2.into()).map(from_raw)
[INFO] [stdout]     |         --------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |             let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                  ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                  |
[INFO] [stdout]     |                                                  this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 122 |         evaluate!(self.0, function, param.into(), param_2.into(), param_3.into()).map(from_raw)
[INFO] [stdout]     |         ------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |               let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                    ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 134 | /         evaluate!(
[INFO] [stdout] 135 | |             self.0,
[INFO] [stdout] 136 | |             function,
[INFO] [stdout] 137 | |             param.into(),
[INFO] [stdout] ...   |
[INFO] [stdout] 140 | |             param_4.into()
[INFO] [stdout] 141 | |         )
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |               let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                    ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 155 | /         evaluate!(
[INFO] [stdout] 156 | |             self.0,
[INFO] [stdout] 157 | |             function,
[INFO] [stdout] 158 | |             param.into(),
[INFO] [stdout] ...   |
[INFO] [stdout] 162 | |             param_5.into()
[INFO] [stdout] 163 | |         )
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |               let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                    ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 179 | /         evaluate!(
[INFO] [stdout] 180 | |             self.0,
[INFO] [stdout] 181 | |             function,
[INFO] [stdout] 182 | |             param.into(),
[INFO] [stdout] ...   |
[INFO] [stdout] 187 | |             param_6.into()
[INFO] [stdout] 188 | |         )
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |               let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                    ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 205 | /         evaluate!(
[INFO] [stdout] 206 | |             self.0,
[INFO] [stdout] 207 | |             function,
[INFO] [stdout] 208 | |             param.into(),
[INFO] [stdout] ...   |
[INFO] [stdout] 214 | |             param_7.into()
[INFO] [stdout] 215 | |         )
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: getting the inner pointer of a temporary `CString`
[INFO] [stdout]    --> src/connection.rs:28:79
[INFO] [stdout]     |
[INFO] [stdout] 28  |               let result = unsafe { kapi::k($conn, CString::new($func).unwrap().as_ptr() $(, $param.into_raw() as *const K)*, null()) };
[INFO] [stdout]     |                                                    ---------------------------- ^^^^^^ this pointer will be invalid
[INFO] [stdout]     |                                                    |
[INFO] [stdout]     |                                                    this `CString` is deallocated at the end of the statement, bind it to a variable to extend its lifetime
[INFO] [stdout] ...
[INFO] [stdout] 233 | /         evaluate!(
[INFO] [stdout] 234 | |             self.0,
[INFO] [stdout] 235 | |             function,
[INFO] [stdout] 236 | |             param.into(),
[INFO] [stdout] ...   |
[INFO] [stdout] 243 | |             param_8.into()
[INFO] [stdout] 244 | |         )
[INFO] [stdout]     | |_________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: pointers do not have a lifetime; when calling `as_ptr` the `CString` will be deallocated at the end of the statement because nothing is referencing it as far as the type system is concerned
[INFO] [stdout]     = help: for more information, see https://doc.rust-lang.org/reference/destructors.html
[INFO] [stdout]     = note: this warning originates in the macro `evaluate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 11 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b2766535f7a7067cc30a9d7ba0f4b2639ff6544aec49fffcb65e2ecf2f634a1f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b2766535f7a7067cc30a9d7ba0f4b2639ff6544aec49fffcb65e2ecf2f634a1f", kill_on_drop: false }`
[INFO] [stdout] b2766535f7a7067cc30a9d7ba0f4b2639ff6544aec49fffcb65e2ecf2f634a1f
